<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');

/**
 * 로그인 컨트롤러
 */
class Login extends CI_Controller {
	
	var $data = array();
	var $return_url = '';
	
	function __construct() {
		parent::__construct();

		$this->return_url = $this->input->get('return_url');
		$this->return_url = $this->return_url != '' ? ROOT_URL.$this->return_url : ROOT_URL.'/main';
	}

	// Default
	function index() {
		$this->login();
	}
	
	function login() {
		$this->load->view('auth/login_v', $this->data);
	}

	/**
	 * 로그인 체크
	 */
	function check() {
		log_message('debug', "@@@@ Login::check()");

		// 폼 입력값 가져오기
		$user_id     = $this->input->post('user_id', TRUE);
		$pwd         = $this->input->post('pwd', TRUE);
		$pwd         = crypt($pwd, $this->config->item('encryption_key'));	//패스워드는 암호화해서 비교
		
		// DB 연동 처리
		$this->load->model('auth/auth_model', 'auth', TRUE);

		// 관리자 아이디 체크
		$result = $this->auth->get_admin($user_id);
		if ($result == FALSE) {
			die('아이디/패스워드 불일치');
		}
		
		// 아이디 패스워드 체크
		$member = $this->auth->get_member($user_id);
		if (count($member) == 0 || $pwd != $member['pwd']) {
			die('아이디/패스워드 불일치');
		}

		// 세션 저장
		$arr_userinfo = array(
			'login_yn'   => 'Y',
			'user_id'    => $member['user_id'],
			'user_name'  => $member['user_name'],
			'nickname'   => $member['nickname']
		);
		$this->session->set_userdata('userinfo', $arr_userinfo);
		
		// 로그인 성공후 이동할 페이지 지정
		redirect($this->return_url, 'refresh');
	}

	/**
	 * 로그아웃
	 */
	function logout() {
		$this->session->unset_userdata('userinfo');

		// 로그아웃 후 이동할 페이지 지정
		redirect($this->return_url, 'refresh');
	}
}

/* End of file login.php */